/*
 * HorseItem.cpp
 *
 *  Created on: Sep 18, 2017
 *      Author: gaoyi
 */


#include "HorseItem.h"
#include "ProtoBuffer/AllProtocol.h"


HorseItem::HorseItem()
{
	mHorseId = 0;
	mHorseUnLock = false;
}

HorseItem::~HorseItem()
{

}

void HorseItem::CopyFrom(const HorseItem& item)
{
	mHorseId = item.mHorseId;
	mHorseUnLock = item.mHorseUnLock;
	mForever = item.mForever;
	mLockTime = item.mLockTime;
	mContinueTime = item.mContinueTime;
}

HorseItem::HorseItem(const HorseItem& item)
{
	if (&item != this)
	{
		CopyFrom(item);
	}
}

HorseItem& HorseItem::operator=(const HorseItem& item)
{
	if (&item == this) return *this;

	CopyFrom(item);
	return *this;
}

void HorseItem::LoadFromPB(const ::ProtoBuf::HorseItemInfo& horseInfo)
{
	mHorseId = horseInfo.horse_id();
	mHorseUnLock = horseInfo.horse_unlock();
	mForever = horseInfo.forever();
	mLockTime = horseInfo.lock_time();
	mContinueTime = horseInfo.continue_time();
}

void HorseItem::SaveToPB(::ProtoBuf::HorseItemInfo& horseInfo)
{
	horseInfo.set_horse_id(mHorseId);
	horseInfo.set_horse_unlock(mHorseUnLock);
	horseInfo.set_forever(mForever);
	horseInfo.set_lock_time(mLockTime);
	horseInfo.set_continue_time(mContinueTime);
}
